// 获取文章分类列表

// 导入express
const express = require("express");
// 创建路由对象
const router = express.Router();
// 导入文章分类的路由处理函数模块
const artcate_handler = require("../router_handler/artcate");

// 导入验证数据的中间件
const expressJoi = require("@escook/express-joi");
// 导入文章分类的验证模块
const {
  add_cate_schema,
  delete_cate_schema,
  get_cate_schema,
  update_cate_schema,
} = require("../schema/artcate");
// ----------------------------------
// 初始化路由处理函数模块
router.get("/cates", artcate_handler.getArticleCates);

// ----------------------------------

//  新增文章分类
// 定义路由和处理函数
router.post(
  "/addcates",
  expressJoi(add_cate_schema), //验证表单数据
  artcate_handler.addArticleCates
);

// ----------------------------------

// 根据 Id 删除文章分类
// 定义路由和处理函数
router.get(
  "/deletecate/:id",
  expressJoi(delete_cate_schema), //验证表单数据
  artcate_handler.deleteCateById
);

// ----------------------------------

// 根据 Id 获取文章分类数据
// 定义路由和处理函数
router.get(
  "/cates/:id",
  expressJoi(get_cate_schema), // 验证表单数据
  artcate_handler.getArtCateById
);

// ----------------------------------

//  根据 Id 更新文章分类数据
// 定义路由和处理函数
router.post(
  "/updatecate",
  expressJoi(update_cate_schema), // 验证表单数据
  artcate_handler.updateCateById
);
// 查询 分类名称 与 分类别名 是否被占用
// 实现更新文章分类的功能

// 暴漏
module.exports = router;
